home *** CD-ROM | disk | FTP | other *** search
/ Aminet 41 / Aminet 41 (2001)(Schatztruhe)[!][Feb 2001].iso / Aminet / comm / misc / MPackMUI.lha / MPackMUI / Source / GUI.C < prev    next >
C/C++ Source or Header  |  2000-08-24  |  24KB  |  444 lines

  1. // --------------------------------------------------------------------------------------------------------------
  2. //
  3. //   MPackMUI V1.0 GUI Module
  4. //
  5. // --------------------------------------------------------------------------------------------------------------
  6.  
  7. #include "GUI.h"
  8.  
  9. // --------------------------------------------------------------------------------------------------------------
  10.  
  11. void CreateGUI()
  12. {
  13.     APTR menustrip, menustrip2;
  14.  
  15.     // Create the GUI
  16.  
  17.     App = ApplicationObject,
  18.         MUIA_Application_Title,         "MPackMUI",
  19.         MUIA_Application_Version,       "$VER: MPackMUI V1.01",
  20.         MUIA_Application_Copyright,     "No copyright",
  21.         MUIA_Application_Author,        "ToneMaster, 2000",
  22.         MUIA_Application_Description,   "MUI Interface for MPack V1.5",
  23.         MUIA_Application_Base,          "ZZ02",
  24.  
  25.         // MAIN WINDOW
  26.  
  27.         SubWindow, Windows[WID_MAIN] = WindowObject,
  28.             MUIA_Window_ID, MAKE_ID('X','X','0','1'),
  29.             MUIA_Window_Menustrip, menustrip = MUI_MakeObject(MUIO_MenustripNM, MenuData, 0),
  30.             MUIA_Window_Title, "MPackMUI V1.01",
  31.  
  32.             WindowContents, VGroup,
  33.                 Child, RegisterGroup(Labels),
  34.  
  35.                     // PAGE 1 - ENCODE
  36.  
  37.                     Child, VGroup,
  38.                         Child, ColGroup(4), GroupFrame,
  39.  
  40.                             Child, Label2("Input File:"),
  41.                             Child, Gadgets[GID_INPUT_STRING_P1] = StringObject, StringFrame,
  42.                                 MUIA_String_AdvanceOnCR, TRUE,
  43.                                 MUIA_CycleChain, TRUE,
  44.                             End,
  45.                             Child, Gadgets[GID_INPUT_POP_P1] = PopButton(MUII_PopFile),
  46.                             Child, HSpace(0),
  47.  
  48.                             Child, Label2("Output File:"),
  49.                             Child, Gadgets[GID_OUTPUT_STRING_P1] = StringObject, StringFrame,
  50.                                 MUIA_String_AdvanceOnCR, TRUE,
  51.                                 MUIA_CycleChain, TRUE,
  52.                             End,
  53.                             Child, Gadgets[GID_OUTPUT_POP_P1] = PopButton(MUII_PopFile),
  54.                             Child, HSpace(0),
  55.  
  56.                             Child, Label2("Desc. File:"),
  57.                             Child, Gadgets[GID_DESC_STRING_P1] = StringObject, StringFrame,
  58.                                 MUIA_String_AdvanceOnCR, TRUE,
  59.                                 MUIA_CycleChain, TRUE,
  60.                                 MUIA_Disabled, TRUE,
  61.                             End,
  62.                             Child, Gadgets[GID_DESC_POP_P1] = PopButton(MUII_PopFile),
  63.  
  64.                             Child, Gadgets[GID_DESC_CHECK_P1] = CheckMark(FALSE),
  65.                         End,
  66.  
  67.                         Child, VGroup, GroupFrame,
  68.  
  69.                             Child, Gadgets[GID_TYPE_GROUP_P1] = HGroup,
  70.  
  71.                                 Child, Label2("Type:"),
  72.                                 Child, Gadgets[GID_TYPE_CYCLE_P1] = CycleObject,
  73.                                     MUIA_Cycle_Entries, MIMETypes,
  74.                                 End,
  75.                             End,
  76.  
  77.                             Child, HGroup,
  78.  
  79.                                 Child, Label2("Subject:"),
  80.                                 Child, Gadgets[GID_SUBJECT_STRING_P1] = StringObject, StringFrame,
  81.                                     MUIA_String_AdvanceOnCR, TRUE,
  82.                                     MUIA_CycleChain, TRUE,
  83.                                 End,
  84.                             End,
  85.  
  86.                             Child, ColGroup(3),
  87.  
  88.                                 Child, Label2("Max. Size:"),
  89.                                 Child, Gadgets[GID_MAX_STRING_P1] = StringObject, StringFrame,
  90.                                     MUIA_String_AdvanceOnCR, TRUE,
  91.                                     MUIA_String_Accept, "0123456789",
  92.                                     MUIA_String_Contents, "0",
  93.                                     MUIA_String_MaxLen, 9,
  94.                                     MUIA_CycleChain, TRUE,
  95.                                     MUIA_Disabled, TRUE,
  96.                                 End,
  97.                                 Child, Gadgets[GID_MAX_CHECK_P1] = CheckMark(FALSE),
  98.                             End,
  99.                         End,
  100.  
  101.                         Child, VSpace(10),
  102.  
  103.                         Child, Gadgets[GID_PROGRESS_GAUGE_P1] = GaugeObject, GaugeFrame,
  104.                             MUIA_Gauge_Current, 0,
  105.                             MUIA_Gauge_Horiz, TRUE,
  106.                             MUIA_Gauge_InfoText, "",
  107.                             MUIA_Gauge_Max, 1,
  108.                         End,
  109.  
  110.                         Child, Gadgets[GID_ENCODE_BUTTON_P1] = SimpleButton("Encode"),
  111.                     End,
  112.  
  113.                     // PAGE 2 - DECODE
  114.  
  115.                     Child, VGroup,
  116.                         Child, ColGroup(3), GroupFrame,
  117.  
  118.                             Child, Label2("Input File:"),
  119.                             Child, Gadgets[GID_INPUT_STRING_P2] = StringObject, StringFrame,
  120.                                 MUIA_String_AdvanceOnCR, TRUE,
  121.                                 MUIA_CycleChain, TRUE,
  122.                             End,
  123.                             Child, Gadgets[GID_INPUT_POP_P2] = PopButton(MUII_PopFile),
  124.  
  125.                             Child, Label2("Output Dir:"),
  126.                             Child, Gadgets[GID_OUTPUT_STRING_P2] = StringObject, StringFrame,
  127.                                 MUIA_String_AdvanceOnCR, TRUE,
  128.                                 MUIA_String_Contents, "RAM:",
  129.                                 MUIA_CycleChain, TRUE,
  130.                             End,
  131.                             Child, Gadgets[GID_OUTPUT_POP_P2] = PopButton(MUII_PopDrawer),
  132.                         End,
  133.  
  134.                         Child, VSpace(10),
  135.  
  136.                         Child, ColGroup(3), GroupFrame,
  137.  
  138.                             Child, Label2("Force Overwrite"),
  139.                             Child, Gadgets[GID_FORCE_CHECK_P2] = CheckMark(FALSE),
  140.                             Child, HSpace(150),
  141.  
  142.                             Child, Label2("Unpack Text"),
  143.                             Child, Gadgets[GID_UNPACK_CHECK_P2] = CheckMark(FALSE),
  144.                             Child, HSpace(150),
  145.                         End,
  146.  
  147.                         Child, VSpace(10),
  148.  
  149.                         Child, Gadgets[GID_PROGRESS_GAUGE_P2] = GaugeObject, GaugeFrame,
  150.                             MUIA_Gauge_Current, 0,
  151.                             MUIA_Gauge_Horiz, TRUE,
  152.                             MUIA_Gauge_InfoText, "",
  153.                             MUIA_Gauge_Max, 1,
  154.                         End,
  155.  
  156.                         Child, Gadgets[GID_DECODE_BUTTON_P2] = SimpleButton("Decode"),
  157.                     End,
  158.  
  159.                     // PAGE 3 - EMAIL
  160.  
  161.                     Child, VGroup,
  162.                         Child, ColGroup(4), GroupFrame,
  163.  
  164.                             Child, Label2("Input File:"),
  165.                             Child, Gadgets[GID_INPUT_STRING_P3] = StringObject, StringFrame,
  166.                                 MUIA_String_AdvanceOnCR, TRUE,
  167.                                 MUIA_CycleChain, TRUE,
  168.                             End,
  169.                             Child, Gadgets[GID_INPUT_POP_P3] = PopButton(MUII_PopFile),
  170.                             Child, HSpace(0),
  171.  
  172.                             Child, Label2("Address(es):"),
  173.                             Child, Gadgets[GID_ADDRESS_STRING_P3] = StringObject, StringFrame,
  174.                                 MUIA_String_AdvanceOnCR, TRUE,
  175.                                 MUIA_CycleChain, TRUE,
  176.                             End,
  177.                             Child, HSpace(0),
  178.                             Child, HSpace(0),
  179.  
  180.                             Child, Label2("Desc. File:"),
  181.                             Child, Gadgets[GID_DESC_STRING_P3] = StringObject, StringFrame,
  182.                                 MUIA_String_AdvanceOnCR, TRUE,
  183.                                 MUIA_CycleChain, TRUE,
  184.                                 MUIA_Disabled, TRUE,
  185.                             End,
  186.                             Child, Gadgets[GID_DESC_POP_P3] = PopButton(MUII_PopFile),
  187.                             Child, Gadgets[GID_DESC_CHECK_P3] = CheckMark(FALSE),
  188.                         End,
  189.  
  190.                         Child, VGroup, GroupFrame,
  191.  
  192.                             Child, Gadgets[GID_TYPE_GROUP_P3] = HGroup,
  193.  
  194.                                 Child, Label2("Type:"),
  195.                                 Child, Gadgets[GID_TYPE_CYCLE_P3] = CycleObject,
  196.                                     MUIA_Cycle_Entries, MIMETypes,
  197.                                 End,
  198.                             End,
  199.  
  200.                             Child, HGroup,
  201.  
  202.                                 Child, Label2("Subject:"),
  203.                                 Child, Gadgets[GID_SUBJECT_STRING_P3] = StringObject, StringFrame,
  204.                                     MUIA_String_AdvanceOnCR, TRUE,
  205.                                     MUIA_CycleChain, TRUE,
  206.                                 End,
  207.                             End,
  208.  
  209.                             Child, ColGroup(3),
  210.  
  211.                                 Child, Label2("Max. Size:"),
  212.                                 Child, Gadgets[GID_MAX_STRING_P3] = StringObject, StringFrame,
  213.                                     MUIA_String_AdvanceOnCR, TRUE,
  214.                                     MUIA_String_Accept, "0123456789",
  215.                                     MUIA_String_Contents, "0",
  216.                                     MUIA_String_MaxLen, 9,
  217.                                     MUIA_CycleChain, TRUE,
  218.                                     MUIA_Disabled, TRUE,
  219.                                 End,
  220.                                 Child, Gadgets[GID_MAX_CHECK_P3] = CheckMark(FALSE),
  221.                             End,
  222.                         End,
  223.  
  224.                         Child, VSpace(10),
  225.  
  226.                         Child, Gadgets[GID_PROGRESS_GAUGE_P3] = GaugeObject, GaugeFrame,
  227.                             MUIA_Gauge_Current, 0,
  228.                             MUIA_Gauge_Horiz, TRUE,
  229.                             MUIA_Gauge_InfoText, "",
  230.                             MUIA_Gauge_Max, 1,
  231.                         End,
  232.  
  233.                         Child, Gadgets[GID_ENCODE_BUTTON_P3] = SimpleButton("Encode & Send"),
  234.                     End,
  235.  
  236.                     // PAGE 4 - NG
  237.  
  238.                     Child, VGroup,
  239.                         Child, ColGroup(4), GroupFrame,
  240.  
  241.                             Child, Label2("Input File:"),
  242.                             Child, Gadgets[GID_INPUT_STRING_P4] = StringObject, StringFrame,
  243.                                 MUIA_String_AdvanceOnCR, TRUE,
  244.                                 MUIA_CycleChain, TRUE,
  245.                             End,
  246.                             Child, Gadgets[GID_INPUT_POP_P4] = PopButton(MUII_PopFile),
  247.                             Child, HSpace(0),
  248.  
  249.                             Child, Label2("Newsgroup(s):"),
  250.                             Child, Gadgets[GID_NEWSGROUP_STRING_P4] = StringObject, StringFrame,
  251.                                 MUIA_String_AdvanceOnCR, TRUE,
  252.                                 MUIA_CycleChain, TRUE,
  253.                             End,
  254.                             Child, HSpace(0),
  255.                             Child, HSpace(0),
  256.  
  257.                             Child, Label2("Desc. File:"),
  258.                             Child, Gadgets[GID_DESC_STRING_P4] = StringObject, StringFrame,
  259.                                 MUIA_String_AdvanceOnCR, TRUE,
  260.                                 MUIA_CycleChain, TRUE,
  261.                                 MUIA_Disabled, TRUE,
  262.                             End,
  263.                             Child, Gadgets[GID_DESC_POP_P4] = PopButton(MUII_PopFile),
  264.                             Child, Gadgets[GID_DESC_CHECK_P4] = CheckMark(FALSE),
  265.                         End,
  266.  
  267.                         Child, VGroup, GroupFrame,
  268.  
  269.                             Child, Gadgets[GID_TYPE_GROUP_P4] = HGroup,
  270.  
  271.                                 Child, Label2("Type:"),
  272.                                 Child, Gadgets[GID_TYPE_CYCLE_P4] = CycleObject,
  273.                                     MUIA_Cycle_Entries, MIMETypes,
  274.                                 End,
  275.                             End,
  276.  
  277.                             Child, HGroup,
  278.  
  279.                                 Child, Label2("Subject:"),
  280.                                 Child, Gadgets[GID_SUBJECT_STRING_P4] = StringObject, StringFrame,
  281.                                     MUIA_String_AdvanceOnCR, TRUE,
  282.                                     MUIA_CycleChain, TRUE,
  283.                                 End,
  284.                             End,
  285.  
  286.                             Child, ColGroup(3),
  287.  
  288.                                 Child, Label2("Max. Size:"),
  289.                                 Child, Gadgets[GID_MAX_STRING_P4] = StringObject, StringFrame,
  290.                                     MUIA_String_AdvanceOnCR, TRUE,
  291.                                     MUIA_String_Accept, "0123456789",
  292.                                     MUIA_String_Contents, "0",
  293.                                     MUIA_String_MaxLen, 9,
  294.                                     MUIA_CycleChain, TRUE,
  295.                                     MUIA_Disabled, TRUE,
  296.                                 End,
  297.                                 Child, Gadgets[GID_MAX_CHECK_P4] = CheckMark(FALSE),
  298.                             End,
  299.                         End,
  300.  
  301.                         Child, VSpace(10),
  302.  
  303.                         Child, Gadgets[GID_PROGRESS_GAUGE_P4] = GaugeObject, GaugeFrame,
  304.                             MUIA_Gauge_Current, 0,
  305.                             MUIA_Gauge_Horiz, TRUE,
  306.                             MUIA_Gauge_InfoText, "",
  307.                             MUIA_Gauge_Max, 1,
  308.                         End,
  309.  
  310.                         Child, Gadgets[GID_ENCODE_BUTTON_P4] = SimpleButton("Encode & Post"),
  311.                     End,
  312.                 End,
  313.             End,
  314.         End,
  315.  
  316.         // MIME PREFS WINDOW
  317.  
  318.         SubWindow, Windows[WID_MIMEPREFS] = WindowObject,
  319.             MUIA_Window_ID, MAKE_ID('X','X','0','2'),
  320.             MUIA_Window_Menustrip, menustrip2 = MUI_MakeObject(MUIO_MenustripNM, Menu2Data, 0),
  321.             MUIA_Window_Title, "MPackMUI V1.01 MIME Prefs",
  322.  
  323.             WindowContents, VGroup,
  324.  
  325.                 Child, Gadgets[GID_MIMETYPES_LIST_PREFS] = ListviewObject,
  326.                     MUIA_Listview_List, ListObject, ReadListFrame,
  327.                         MUIA_List_SourceArray, MIMETypes,
  328.                     End,
  329.                 End,
  330.  
  331.                 Child, HGroup,
  332.                     Child, Label2("MIME type:"),
  333.  
  334.                     Child, HGroup,
  335.                         MUIA_Group_HorizSpacing, 0,
  336.  
  337.                         Child, Gadgets[GID_MIMETYPES_CYCLE_PREFS] = CycleObject,
  338.                             MUIA_Cycle_Entries, PrefsCycleLabels,
  339.                             MUIA_FixWidthTxt, "Application/",
  340.                         End,
  341.  
  342.                         Child, Gadgets[GID_MIMETYPES_STRING_PREFS] = StringObject, StringFrame,
  343.                         End,
  344.                     End,
  345.                 End,
  346.  
  347.                 Child, HGroup,
  348.                     Child, Gadgets[GID_ADD_BUTTON_PREFS] = SimpleButton("Add"),
  349.                     Child, Gadgets[GID_REMOVE_BUTTON_PREFS] = SimpleButton("Remove"),
  350.                     Child, Gadgets[GID_COPY_BUTTON_PREFS] = SimpleButton("Copy"),
  351.                     Child, Gadgets[GID_SORT_BUTTON_PREFS] = SimpleButton("Sort"),
  352.                 End,
  353.  
  354.                 Child, RectangleObject, MUIA_Rectangle_HBar, TRUE, MUIA_FixHeight, 5, End,
  355.  
  356.                 Child, HGroup,
  357.                     Child, Gadgets[GID_SAVE_BUTTON_PREFS] = SimpleButton("Save"),
  358.                     Child, Gadgets[GID_USE_BUTTON_PREFS] = SimpleButton("Use"),
  359.                     Child, Gadgets[GID_CANCEL_BUTTON_PREFS] = SimpleButton("Cancel"),
  360.                 End,
  361.             End,
  362.         End,
  363.     End;
  364.  
  365.     // Set initial enable/disable states
  366.  
  367.     set(Gadgets[GID_DESC_POP_P1], MUIA_Disabled, TRUE);
  368.     set(Gadgets[GID_DESC_POP_P3], MUIA_Disabled, TRUE);
  369.     set(Gadgets[GID_DESC_POP_P4], MUIA_Disabled, TRUE);
  370.  
  371.     // Find menu items
  372.  
  373.     Menus[MEN_ABOUT] =          (APTR)DoMethod(menustrip, MUIM_FindUData, MEN_ABOUT);
  374.     Menus[MEN_ABOUTMUI] =       (APTR)DoMethod(menustrip, MUIM_FindUData, MEN_ABOUTMUI);
  375.     Menus[MEN_QUIT] =           (APTR)DoMethod(menustrip, MUIM_FindUData, MEN_QUIT);
  376.     Menus[MEN_MIMEPREFS] =      (APTR)DoMethod(menustrip, MUIM_FindUData, MEN_MIMEPREFS);
  377.     Menus[MEN_MUIPREFS] =       (APTR)DoMethod(menustrip, MUIM_FindUData, MEN_MUIPREFS);
  378.     Menus[MEN_RESET] =          (APTR)DoMethod(menustrip2, MUIM_FindUData, MEN_RESET);
  379.     Menus[MEN_LASTSAVED] =      (APTR)DoMethod(menustrip2, MUIM_FindUData, MEN_LASTSAVED);
  380.     Menus[MEN_RESTORE] =        (APTR)DoMethod(menustrip2, MUIM_FindUData, MEN_RESTORE);
  381.     Menus[MEN_IMPORTAWEB] =     (APTR)DoMethod(menustrip2, MUIM_FindUData, MEN_IMPORTAWEB);
  382.     Menus[MEN_IMPORTVOYAGER] =  (APTR)DoMethod(menustrip2, MUIM_FindUData, MEN_IMPORTVOYAGER);
  383.  
  384.     // Set up notifications
  385.  
  386.     DoMethod(Windows[WID_MAIN], MUIM_Notify, MUIA_Window_CloseRequest, TRUE, App, 2, MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit);
  387.     DoMethod(Windows[WID_MIMEPREFS], MUIM_Notify, MUIA_Window_CloseRequest, TRUE, Windows[WID_MIMEPREFS], 3, MUIM_CallHook, &PrefsCancelButtonHook, MUIV_TriggerValue);
  388.     DoMethod(Menus[MEN_ABOUT], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_ABOUT], 3, MUIM_CallHook, &MenuAboutHook, MUIV_TriggerValue);
  389.     DoMethod(Menus[MEN_ABOUTMUI], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, MUIV_Notify_Application, 2, MUIM_Application_AboutMUI, Windows[WID_MAIN]);
  390.     DoMethod(Menus[MEN_QUIT], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, App, 2, MUIM_Application_ReturnID, MUIV_Application_ReturnID_Quit);
  391.     DoMethod(Menus[MEN_MIMEPREFS], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_MIMEPREFS], 3, MUIM_CallHook, &MenuMIMEPrefsHook, MUIV_TriggerValue);
  392.     DoMethod(Menus[MEN_MUIPREFS], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, MUIV_Notify_Application, 2, MUIM_Application_OpenConfigWindow, 0);
  393.     DoMethod(Menus[MEN_RESET], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_RESET], 3, MUIM_CallHook, &MenuResetPrefsHook, MUIV_TriggerValue);
  394.     DoMethod(Menus[MEN_LASTSAVED], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_LASTSAVED], 3, MUIM_CallHook, &MenuLastSavedPrefsHook, MUIV_TriggerValue);
  395.     DoMethod(Menus[MEN_RESTORE], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_RESTORE], 3, MUIM_CallHook, &MenuRestorePrefsHook, MUIV_TriggerValue);
  396.     DoMethod(Menus[MEN_IMPORTAWEB], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_IMPORTAWEB], 3, MUIM_CallHook, &MenuImportAwebPrefsHook, MUIV_TriggerValue);
  397.     DoMethod(Menus[MEN_IMPORTVOYAGER], MUIM_Notify, MUIA_Menuitem_Trigger, MUIV_EveryTime, Menus[MEN_IMPORTVOYAGER], 3, MUIM_CallHook, &MenuImportVoyagerPrefsHook, MUIV_TriggerValue);
  398.     DoMethod(Gadgets[GID_INPUT_POP_P1], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_INPUT_POP_P1], 3, MUIM_CallHook, &Page1InputPopHook, MUIV_TriggerValue);
  399.     DoMethod(Gadgets[GID_OUTPUT_POP_P1], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_OUTPUT_POP_P1], 3, MUIM_CallHook, &Page1OutputPopHook, MUIV_TriggerValue);
  400.     DoMethod(Gadgets[GID_DESC_POP_P1], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_DESC_POP_P1], 3, MUIM_CallHook, &Page1DescPopHook, MUIV_TriggerValue);
  401.     DoMethod(Gadgets[GID_DESC_CHECK_P1], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_DESC_CHECK_P1], 3, MUIM_CallHook, &Page1DescCheckHook, MUIV_TriggerValue);
  402.     DoMethod(Gadgets[GID_MAX_CHECK_P1], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_MAX_CHECK_P1], 3, MUIM_CallHook, &Page1MaxCheckHook, MUIV_TriggerValue);
  403.     DoMethod(Gadgets[GID_ENCODE_BUTTON_P1], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_ENCODE_BUTTON_P1], 3, MUIM_CallHook, &Page1EncodeButtonHook, MUIV_TriggerValue);
  404.     DoMethod(Gadgets[GID_INPUT_POP_P2], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_INPUT_POP_P2], 3, MUIM_CallHook, &Page2InputPopHook, MUIV_TriggerValue);
  405.     DoMethod(Gadgets[GID_OUTPUT_POP_P2], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_OUTPUT_POP_P2], 3, MUIM_CallHook, &Page2OutputPopHook, MUIV_TriggerValue);
  406.     DoMethod(Gadgets[GID_DECODE_BUTTON_P2], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_DECODE_BUTTON_P2], 3, MUIM_CallHook, &Page2DecodeButtonHook, MUIV_TriggerValue);
  407.     DoMethod(Gadgets[GID_INPUT_POP_P3], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_INPUT_POP_P3], 3, MUIM_CallHook, &Page3InputPopHook, MUIV_TriggerValue);
  408.     DoMethod(Gadgets[GID_DESC_POP_P3], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_DESC_POP_P3], 3, MUIM_CallHook, &Page3DescPopHook, MUIV_TriggerValue);
  409.     DoMethod(Gadgets[GID_DESC_CHECK_P3], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_DESC_CHECK_P3], 3, MUIM_CallHook, &Page3DescCheckHook, MUIV_TriggerValue);
  410.     DoMethod(Gadgets[GID_MAX_CHECK_P3], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_MAX_CHECK_P3], 3, MUIM_CallHook, &Page3MaxCheckHook, MUIV_TriggerValue);
  411.     DoMethod(Gadgets[GID_ENCODE_BUTTON_P3], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_ENCODE_BUTTON_P3], 3, MUIM_CallHook, &Page3EncodeButtonHook, MUIV_TriggerValue);
  412.     DoMethod(Gadgets[GID_INPUT_POP_P4], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_INPUT_POP_P4], 3, MUIM_CallHook, &Page4InputPopHook, MUIV_TriggerValue);
  413.     DoMethod(Gadgets[GID_DESC_POP_P4], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_DESC_POP_P4], 3, MUIM_CallHook, &Page4DescPopHook, MUIV_TriggerValue);
  414.     DoMethod(Gadgets[GID_DESC_CHECK_P4], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_DESC_CHECK_P4], 3, MUIM_CallHook, &Page4DescCheckHook, MUIV_TriggerValue);
  415.     DoMethod(Gadgets[GID_MAX_CHECK_P4], MUIM_Notify, MUIA_Pressed, MUIV_EveryTime, Gadgets[GID_MAX_CHECK_P4], 3, MUIM_CallHook, &Page4MaxCheckHook, MUIV_TriggerValue);
  416.     DoMethod(Gadgets[GID_ENCODE_BUTTON_P4], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_ENCODE_BUTTON_P4], 3, MUIM_CallHook, &Page4EncodeButtonHook, MUIV_TriggerValue);
  417.     DoMethod(Gadgets[GID_MIMETYPES_LIST_PREFS], MUIM_Notify, MUIA_List_Active, MUIV_EveryTime, Gadgets[GID_MIMETYPES_LIST_PREFS], 3, MUIM_CallHook, &PrefsMIMEListHook, MUIV_TriggerValue);
  418.     DoMethod(Gadgets[GID_MIMETYPES_CYCLE_PREFS], MUIM_Notify, MUIA_Cycle_Active, MUIV_EveryTime, Gadgets[GID_MIMETYPES_CYCLE_PREFS], 3, MUIM_CallHook, &PrefsMIMEUpdateHook, MUIV_TriggerValue);
  419.     DoMethod(Gadgets[GID_MIMETYPES_STRING_PREFS], MUIM_Notify, MUIA_String_Acknowledge, MUIV_EveryTime, Gadgets[GID_MIMETYPES_STRING_PREFS], 3, MUIM_CallHook, &PrefsMIMEUpdateHook, MUIV_TriggerValue);
  420.     DoMethod(Gadgets[GID_ADD_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_ADD_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsAddButtonHook, MUIV_TriggerValue);
  421.     DoMethod(Gadgets[GID_REMOVE_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_REMOVE_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsRemoveButtonHook, MUIV_TriggerValue);
  422.     DoMethod(Gadgets[GID_COPY_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_COPY_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsCopyButtonHook, MUIV_TriggerValue);
  423.     DoMethod(Gadgets[GID_SORT_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_SORT_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsSortButtonHook, MUIV_TriggerValue);
  424.     DoMethod(Gadgets[GID_SAVE_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_SAVE_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsSaveButtonHook, MUIV_TriggerValue);
  425.     DoMethod(Gadgets[GID_USE_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_USE_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsUseButtonHook, MUIV_TriggerValue);
  426.     DoMethod(Gadgets[GID_CANCEL_BUTTON_PREFS], MUIM_Notify, MUIA_Pressed, FALSE, Gadgets[GID_CANCEL_BUTTON_PREFS], 3, MUIM_CallHook, &PrefsCancelButtonHook, MUIV_TriggerValue);
  427.  
  428.     // Check that application was created
  429.  
  430.     if (!(App))
  431.     {
  432.         DoEasyReq("Couldn't create application");
  433.         CleanUp();
  434.     } /* if */
  435.  
  436.     // Open the window
  437.  
  438.     set(Windows[WID_MAIN], MUIA_Window_Open, TRUE);
  439. } /* CreateGUI() */
  440.  
  441. // --------------------------------------------------------------------------------------------------------------
  442.  
  443. // End Of Text
  444.